﻿Public Class xtf_ABMtercerorelacion
    Public obj_tercerorelacion As cls_tercerorelacion_ = Nothing

    Public Sub New()
        InitializeComponent()
        CargarTerceroTipoRelacion()
        CargarTercero()
        Me.Text = "Contacto - Nuevo"
        obj_tercerorelacion = New cls_tercerorelacion_
        opt_Tipo.Text = "Recomendado"
        dte_fecha.DateTime = Now
        opt_Tipo.SelectedIndex = 1
    End Sub

    Private Sub CargarTerceroTipoRelacion()
        Dim tercerotiporelacion_ As New cls_tercerotiporelacion_
        tercerotiporelacion_.CargarTodos()
        cargarCombo(cbo_tercerotiporelacion, tercerotiporelacion_.Items)
    End Sub

    Private Sub CargarTercero()
        Dim tercero_ As New cls_tercero_
        tercero_.CargarTodos()
        cargarCombo(cbo_TerceroContacto, tercero_.Items)
    End Sub

    Public Sub Modificar(ByRef tercerorelacion As cls_tercerorelacion_)
        If IsNothing(obj_tercerorelacion) Then
            obj_tercerorelacion = New cls_tercerorelacion_
        End If
        obj_tercerorelacion = tercerorelacion

        Me.Text = "Contacto - " & obj_tercerorelacion.ToString
        'txt_ID.Text = obj_localidad.idlocalidad
        opt_Tipo.SelectedIndex = obj_tercerorelacion.tipo
        txt_Observaciones.Text = obj_tercerorelacion.observaciones
        dte_fecha.DateTime = obj_tercerorelacion.fecha
        Select Case opt_Tipo.SelectedIndex
            Case 2 'Recomendado"
                cbo_TerceroContacto.EditValue = obj_tercerorelacion.tercerocontacto.idtercero
                opt_Tipo.SelectedIndex = 2
            Case 0 '"Definido"
                cbo_tercerotiporelacion.EditValue = obj_tercerorelacion.tercerotiporelacion.idtercerotiporelacion
                opt_Tipo.SelectedIndex = 0
        End Select

        obj_tercerorelacion.tercerocontacto = Nothing
        obj_tercerorelacion.tercerotiporelacion = Nothing

    End Sub
    Public Function ComprobarDatos() As Boolean
        Select Case opt_Tipo.SelectedIndex
            Case 2 '"Recomendado"
                If cbo_TerceroContacto.Enabled = False Then
                    ErrManagerShow("001020", Me)
                    Return False
                End If
            Case 0 '"Definido"
                If cbo_tercerotiporelacion.Enabled = False Then
                    ErrManagerShow("001021", Me)
                    Return False
                End If
            Case 2 '"Personalizado"

        End Select
        Return True
    End Function

    Private Sub btn_Guardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Guardar.Click
        If ComprobarDatos() Then
            obj_tercerorelacion.observaciones = txt_Observaciones.Text
            obj_tercerorelacion.fecha = dte_fecha.DateTime
            Select Case opt_Tipo.SelectedIndex
                Case 2 '"Recomendado"
                    obj_tercerorelacion.idtercerocontacto = cbo_TerceroContacto.EditValue
                    obj_tercerorelacion.tipo = cls_tercerorelacion_.enu_tiporelacion.Recomendado
                Case 0 '"Definido"
                    obj_tercerorelacion.idtercerotiporelacion = cbo_tercerotiporelacion.EditValue
                    obj_tercerorelacion.tipo = cls_tercerorelacion_.enu_tiporelacion.Definido
                Case 1 '"Personalizado"
                    obj_tercerorelacion.tipo = cls_tercerorelacion_.enu_tiporelacion.Personalizado
            End Select

            Me.DialogResult = Windows.Forms.DialogResult.OK
        End If
    End Sub

    Private Sub btn_Cerrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Cerrar.Click
        Me.DialogResult = Windows.Forms.DialogResult.Cancel
    End Sub

    Private Sub opt_Tipo_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opt_Tipo.SelectedIndexChanged
        Select Case opt_Tipo.SelectedIndex
            Case 2 '"Recomendado"
                lbl_TerceroContacto.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
                lbl_tercerotiporelacion.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
            Case 0 '"Definido"
                lbl_TerceroContacto.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
                lbl_tercerotiporelacion.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
            Case 1 '"Personalizado"
                lbl_TerceroContacto.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
                lbl_tercerotiporelacion.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
        End Select
    End Sub
End Class